package com.education.wisdom.service;

import com.education.wisdom.pojo.SysAppLogin;
import com.education.wisdom.pojo.SysAppTeacherstudent;

import java.util.List;
import java.util.Map;

/**
 * 系统用户 服务层
 *
 * @author ruoyi
 * @date 2018-10-25
 */
public interface ISysAppLoginService {
    /**
     * 查询系统用户信息
     *
     * @param userId 系统用户ID
     * @return 系统用户信息
     */
    public SysAppLogin selectSysAppLoginById(String userId);

    /**
     * 查询系统用户列表
     *
     * @param SysAppLogin 系统用户信息
     * @return 系统用户集合
     */
    public List<SysAppLogin> selectSysAppLoginList(SysAppLogin SysAppLogin);

    public List<SysAppLogin> selectstudentByteacher(SysAppTeacherstudent sysAppTeacherstudent);

    /**
     * 新增系统用户
     *
     * @param SysAppLogin 系统用户信息
     * @return 结果
     */
    public int insertSysAppLogin(SysAppLogin SysAppLogin);

    /**
     * 修改系统用户
     *
     * @param SysAppLogin 系统用户信息
     * @return 结果
     */
    public int updateSysAppLogin(SysAppLogin SysAppLogin);

    public int updateSysAppLoginbyuserPhone(SysAppLogin SysAppLogin);

    /**
     * 删除系统用户信息
     *
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteSysAppLoginByIds(String ids);

    /**
     * 校验用户名称是否唯一
     *
     * @param userloginName 登录名称
     * @return 结果
     */
    public int checkLoginNameUnique(String userloginName);

    /**
     * 校验手机号码是否唯一
     *
     * @param userphone 用户信息
     * @return 结果
     */
    public String checkPhoneUnique(String userphone);

    /**
     * 通过手机号查询
     *
     * @param phone
     * @return
     */
    SysAppLogin selectByPhone(String phone);

    /**
     * 校验email是否唯一
     *
     * @param useremail 用户信息
     * @return 结果
     */
    public String checkEmailUnique(String useremail);

    public SysAppLogin selectSysAppLogin(Map<String, Object> map);

    public SysAppLogin selectByMap(Map<String, Object> map);

    SysAppLogin selectByDeptId(Map<String, Object> map);

    /**
     * 查询班级下的学生
     * @param classId
     * @return
     */
    public List<SysAppLogin> selectStudents(SysAppLogin SysAppLogin);

    /**
     * 查询班级下的教师
     * @param classId
     * @return
     */
    public List<SysAppLogin> selectTeachers(SysAppLogin SysAppLogin);
}
